// src/utils/logHelper.js
import { getTime } from "@/utils/parse";

// 样式对象化，方便统一管理
const styles = {
    startEnd: `
        color: #ffffff;
        font-weight: light;
        font-size: 22px;
        font-family: "ZCOOL KuaiLe", serif;
        background: green;
        border: 3px solid #004494;
        border-radius: 8px;
        box-shadow: 0px 6px 15px rgba(0, 0, 0, 0.3);
        text-align: center;
        padding: 0 30px;
    `,
    startEnd2: `
        color: red;
        font-weight: bold;
        font-size: 24px;
        font-family: "ZCOOL KuaiLe", serif;
        border: 1px dashed red;
        border-radius: 1px;
        text-align: center;
        padding: 0 15px;
    `,
    message: `
        color: red;
        font-weight: lighter;
        font-size: 30px;
    `,
    content: `
        color: #495057;
        font-size: 18px;
    `
};

// 日志函数
export function log(message, messageName = 'Message') {
    const currentTime = getTime();

    // 打印时间
    console.log(`%c ${currentTime}`, styles.startEnd2);

    // 打印开始标识
    console.log(`%c 开始打印: ${messageName}`, styles.startEnd);

    // 根据 message 类型处理
    if (message && (typeof message === 'object' || Array.isArray(message))) {
        // 处理对象或数组
        console.log(`%c${messageName}:`, styles.message, JSON.stringify(message, null, 2));
    } else {
        // 处理其他类型
        const content = typeof message === 'string' ? message : String(message);
        console.log(`%c 内容: ${content}`, styles.content);
    }

    // 打印结束标识
    console.log(`%c 结束打印: ${messageName}`, styles.startEnd);
}
